LEADTOOLS Image Processing (Leadtools.ImageProcessing.Core assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
ApplyModalityLookupTableCommand Constructor(DicomLookupTableDescriptor,Int16[],ModalityLookupTableCommandFlags)
See Also  Example
Leadtools.ImageProcessing.Core Namespace > ApplyModalityLookupTableCommand Class > ApplyModalityLookupTableCommand Constructor : ApplyModalityLookupTableCommand Constructor(DicomLookupTableDescriptor,Int16[],ModalityLookupTableCommandFlags)



lookupTableDescriptor
Structure describing the LookupTable. The following members are used:
Value Meaning
FirstStoredPixelValueMapped Indicates the first index whose remapped value is stored in the LookupTable. All pixels that are less than this value will be remapped to LookupTable[0].
lookupTable
Array of short values that contains the lookup table. Its length determines the number of entries. All the pixels that are greater than FirstStoredPixelValueMapped + (LookupTable->Length) will be set to the last entry in the LookupTable (LookupTable[LookupTable->Length - 1]).
flags
Flags that determine the behavior of this method. These flags can be OR-ed together.
Initializes a new ApplyModalityLookupTableCommand with explicit parameters. Supported in Silverlight, Windows Phone 7

Syntax

Visual Basic (Declaration) 
Public Function New( _
   ByVal lookupTableDescriptor As DicomLookupTableDescriptor, _
   ByVal lookupTable() As Short, _
   ByVal flags As ModalityLookupTableCommandFlags _
)
Visual Basic (Usage)Copy Code
Dim lookupTableDescriptor As DicomLookupTableDescriptor
Dim lookupTable() As Short
Dim flags As ModalityLookupTableCommandFlags
 
Dim instance As New ApplyModalityLookupTableCommand(lookupTableDescriptor, lookupTable, flags)
C# 
public ApplyModalityLookupTableCommand( 
   DicomLookupTableDescriptor lookupTableDescriptor,
   short[] lookupTable,
   ModalityLookupTableCommandFlags flags
)
C++/CLI 
public:
ApplyModalityLookupTableCommand( 
   DicomLookupTableDescriptor^ lookupTableDescriptor,
   array<short>^ lookupTable,
   ModalityLookupTableCommandFlags flags
)

Parameters

lookupTableDescriptor
Structure describing the LookupTable. The following members are used:
Value Meaning
FirstStoredPixelValueMapped Indicates the first index whose remapped value is stored in the LookupTable. All pixels that are less than this value will be remapped to LookupTable[0].
lookupTable
Array of short values that contains the lookup table. Its length determines the number of entries. All the pixels that are greater than FirstStoredPixelValueMapped + (LookupTable->Length) will be set to the last entry in the LookupTable (LookupTable[LookupTable->Length - 1]).
flags
Flags that determine the behavior of this method. These flags can be OR-ed together.

Example

Run the Leadtools.ImageProcessing.Core.ApplyModalityLookupTableCommand on an image.

Visual BasicCopy Code
Public Sub ApplyModalityLookupTableConstructorExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"))

   ' Prepare the command
   Dim i As Integer
   Dim pLookupTable() As Short
   ReDim pLookupTable(65535)
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16)
   ' set a LookupTable which reduces the intensity of each pixel to half
   For i = 0 To 65535
      pLookupTable(i) = CType(i \ 2, Int16)
   Next
   ' apply the LookupTable
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None)
   command.Run(leadImage)

End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void ApplyModalityLookupTableConstructorExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"));

      // Prepare the command
      int                i; 
      short[] pLookupTable = new short[65536]; 
      DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16);

      // set a LookupTable which reduces the intensity of each pixel to half
      for(i = 0; i < 65536; i++)
         pLookupTable[i] = (short)(i / 2);

      // apply the LookupTable
      ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
      command.Run(image);

   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
public void ApplyModalityLookupTableConstructorExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   int i;
   short[] pLookupTable = new short[65536];
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16);
   // set a LookupTable which reduces the intensity of each pixel to half
   for (i = 0; i < 65536; i++)
      pLookupTable[i] = (short)(i / 2);

   // apply the LookupTable
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
   command.Run(image);

   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
SilverlightVBCopy Code
Public Sub ApplyModalityLookupTableConstructorExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim i As Integer
   Dim pLookupTable As Short() = New Short(65535){}
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16)
   ' set a LookupTable which reduces the intensity of each pixel to half
   For i = 0 To 65535
      pLookupTable(i) = CShort(i / 2)
   Next i

   ' apply the LookupTable
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None)
   command.Run(image)

   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub

Requirements

Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also